{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Day11 基础绘图类型——柱状图\n",
    "\n",
    "　　在相继学习了`matplotlib`中的散点图与折线图之后，接下来我们来学习如何在`matplotlib`中高度自由地绘制柱状图。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2020-10-26T10:36:07.126391Z",
     "iopub.status.busy": "2020-10-26T10:36:07.126391Z",
     "iopub.status.idle": "2020-10-26T10:36:07.342811Z",
     "shell.execute_reply": "2020-10-26T10:36:07.341812Z",
     "shell.execute_reply.started": "2020-10-26T10:36:07.126391Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "matplotlib版本： 3.3.2\n"
     ]
    }
   ],
   "source": [
    "import matplotlib;print('matplotlib版本：', matplotlib.__version__)\n",
    "import matplotlib.pyplot as plt # 从matplotlib中导入我们最经常使用的pyplot子模块\n",
    "\n",
    "plt.rcParams['font.sans-serif'] = ['SimHei'] # 设定默认字体为SimHei以解决中文显示乱码问题\n",
    "plt.rcParams['axes.unicode_minus'] = False # 解决图像负号'-'不正常显示的问题"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "　　为了方便演示柱状图，我们先来伪造一个含有多个分类字段的数据框："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2020-10-26T10:36:07.344806Z",
     "iopub.status.busy": "2020-10-26T10:36:07.343807Z",
     "iopub.status.idle": "2020-10-26T10:36:07.391680Z",
     "shell.execute_reply": "2020-10-26T10:36:07.390682Z",
     "shell.execute_reply.started": "2020-10-26T10:36:07.344806Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>季度</th>\n",
       "      <th>系列</th>\n",
       "      <th>热度</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>第一季度</td>\n",
       "      <td>Python</td>\n",
       "      <td>3732</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>第二季度</td>\n",
       "      <td>Python</td>\n",
       "      <td>4264</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>第三季度</td>\n",
       "      <td>Python</td>\n",
       "      <td>5859</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>第四季度</td>\n",
       "      <td>Python</td>\n",
       "      <td>8891</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>第一季度</td>\n",
       "      <td>R</td>\n",
       "      <td>5373</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>第二季度</td>\n",
       "      <td>R</td>\n",
       "      <td>6874</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>第三季度</td>\n",
       "      <td>R</td>\n",
       "      <td>7744</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>第四季度</td>\n",
       "      <td>R</td>\n",
       "      <td>4468</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>第一季度</td>\n",
       "      <td>Julia</td>\n",
       "      <td>1705</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>第二季度</td>\n",
       "      <td>Julia</td>\n",
       "      <td>3599</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>第三季度</td>\n",
       "      <td>Julia</td>\n",
       "      <td>3222</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>第四季度</td>\n",
       "      <td>Julia</td>\n",
       "      <td>8768</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>第一季度</td>\n",
       "      <td>JavaScript</td>\n",
       "      <td>3897</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>第二季度</td>\n",
       "      <td>JavaScript</td>\n",
       "      <td>1537</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>第三季度</td>\n",
       "      <td>JavaScript</td>\n",
       "      <td>7216</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
       "      <td>第四季度</td>\n",
       "      <td>JavaScript</td>\n",
       "      <td>7921</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "      季度          系列    热度\n",
       "0   第一季度      Python  3732\n",
       "1   第二季度      Python  4264\n",
       "2   第三季度      Python  5859\n",
       "3   第四季度      Python  8891\n",
       "4   第一季度           R  5373\n",
       "5   第二季度           R  6874\n",
       "6   第三季度           R  7744\n",
       "7   第四季度           R  4468\n",
       "8   第一季度       Julia  1705\n",
       "9   第二季度       Julia  3599\n",
       "10  第三季度       Julia  3222\n",
       "11  第四季度       Julia  8768\n",
       "12  第一季度  JavaScript  3897\n",
       "13  第二季度  JavaScript  1537\n",
       "14  第三季度  JavaScript  7216\n",
       "15  第四季度  JavaScript  7921"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "import pandas as pd\n",
    "import numpy as np\n",
    "\n",
    "np.random.seed(0) # 固定产生的随机数\n",
    "data = pd.DataFrame({\n",
    "    '季度': ['第一季度', '第二季度', '第三季度', '第四季度'] * 4,\n",
    "    '系列': ['Python'] * 4 + ['R'] * 4 + ['Julia'] * 4 + ['JavaScript'] * 4,\n",
    "    '热度': np.random.randint(1000, 10000, 16)\n",
    "})\n",
    "\n",
    "data"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "　　现在我们有了示例数据，接下来我们先来看一个最基础的**柱状图**，使用到`matplotlib`中的`bar()`："
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "- **单一系列柱状图**"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2020-10-26T10:36:07.393674Z",
     "iopub.status.busy": "2020-10-26T10:36:07.392676Z",
     "iopub.status.idle": "2020-10-26T10:36:07.547262Z",
     "shell.execute_reply": "2020-10-26T10:36:07.546264Z",
     "shell.execute_reply.started": "2020-10-26T10:36:07.393674Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 576x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots(figsize=(8, 4))\n",
    "\n",
    "temp = data.query('季度 == \"第一季度\"')\n",
    "ax.bar(x=temp['系列'], height=temp['热度']);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "　　可以看到，我们将对应x轴与y轴的序列数据分别传入参数`x`与`height`之后，即可绘制出最简单的柱状图，接下来我们深入学习`matplotlib`柱状图中更多的实用参数："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2020-10-26T10:36:07.548259Z",
     "iopub.status.busy": "2020-10-26T10:36:07.548259Z",
     "iopub.status.idle": "2020-10-26T10:36:07.659960Z",
     "shell.execute_reply": "2020-10-26T10:36:07.659960Z",
     "shell.execute_reply.started": "2020-10-26T10:36:07.548259Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 576x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots(figsize=(8, 4))\n",
    "\n",
    "# 使用width参数来设置每个柱体的宽度比例，默认为0.8，设置为1即为完全充满\n",
    "ax.bar(x=temp['系列'], height=temp['热度'], width=0.5);"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2020-10-26T10:36:07.660957Z",
     "iopub.status.busy": "2020-10-26T10:36:07.660957Z",
     "iopub.status.idle": "2020-10-26T10:36:07.745730Z",
     "shell.execute_reply": "2020-10-26T10:36:07.745730Z",
     "shell.execute_reply.started": "2020-10-26T10:36:07.660957Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 576x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots(figsize=(8, 4))\n",
    "\n",
    "# 使用align参数设置柱体相对于x轴刻度的对齐方式，默认为'center'\n",
    "# 另一种方式是'edge'，如下图所示柱体一边贴着刻度\n",
    "ax.bar(x=temp['系列'], height=temp['热度'], width=0.5, align='edge');"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2020-10-26T10:36:07.746728Z",
     "iopub.status.busy": "2020-10-26T10:36:07.746728Z",
     "iopub.status.idle": "2020-10-26T10:36:07.836487Z",
     "shell.execute_reply": "2020-10-26T10:36:07.836487Z",
     "shell.execute_reply.started": "2020-10-26T10:36:07.746728Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 576x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots(figsize=(8, 4))\n",
    "\n",
    "# 使用color设置同一图层所有柱体的填充色彩\n",
    "# 使用edgecolor设置柱体的轮廓色彩\n",
    "# linewidth设置轮廓宽度\n",
    "# alpha设置填充色透明度\n",
    "# linestyle控制轮廓线条样式\n",
    "ax.bar(x=temp['系列'], height=temp['热度'], width=0.5, align='edge',\n",
    "       color='#2d7f5e', edgecolor='black', linewidth=1.5,\n",
    "       alpha=0.8, linestyle='--');"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2020-10-26T10:36:07.837484Z",
     "iopub.status.busy": "2020-10-26T10:36:07.837484Z",
     "iopub.status.idle": "2020-10-26T10:36:07.918268Z",
     "shell.execute_reply": "2020-10-26T10:36:07.918268Z",
     "shell.execute_reply.started": "2020-10-26T10:36:07.837484Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 576x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots(figsize=(8, 4))\n",
    "\n",
    "# 使用hatch参数可以设置柱体内部的填充阴影，有\n",
    "# {'/', '\\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}几种可选\n",
    "ax.bar(x=temp['系列'], height=temp['热度'], width=0.5, align='edge',\n",
    "       color='#2d7f5e', edgecolor='black', linewidth=1.5,\n",
    "       alpha=0.8, linestyle='--', hatch='*');"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2020-10-26T10:36:07.920264Z",
     "iopub.status.busy": "2020-10-26T10:36:07.920264Z",
     "iopub.status.idle": "2020-10-26T10:36:08.033996Z",
     "shell.execute_reply": "2020-10-26T10:36:08.033996Z",
     "shell.execute_reply.started": "2020-10-26T10:36:07.920264Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 576x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots(figsize=(8, 4))\n",
    "\n",
    "# 使用hatch参数可以设置柱体内部的填充阴影，有\n",
    "# {'/', '\\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}几种可选\n",
    "# 并且这些阴影样式字符可以传入多个进行组合\n",
    "ax.bar(x=temp['系列'], height=temp['热度'], width=0.5, align='edge',\n",
    "       color='#2d7f5e', edgecolor='black', linewidth=1.5,\n",
    "       alpha=0.8, linestyle='--', hatch='|-');"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2020-10-26T10:36:08.035952Z",
     "iopub.status.busy": "2020-10-26T10:36:08.034955Z",
     "iopub.status.idle": "2020-10-26T10:36:08.123717Z",
     "shell.execute_reply": "2020-10-26T10:36:08.123717Z",
     "shell.execute_reply.started": "2020-10-26T10:36:08.035952Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 576x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots(figsize=(8, 4))\n",
    "\n",
    "# 使用hatch参数可以设置柱体内部的填充阴影，有\n",
    "# {'/', '\\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}几种可选\n",
    "# 并且这些阴影样式字符可以传入多个进行组合，如果重复同样的字符\n",
    "# 会增大同一阴影填充的密度\n",
    "ax.bar(x=temp['系列'], height=temp['热度'], width=0.5, align='edge',\n",
    "       color='#2d7f5e', edgecolor='black', linewidth=1.5,\n",
    "       alpha=0.8, linestyle='--', hatch='||||');"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "　　`matplotlib`还赋予了我们针对单个柱体进行属性修改的能力，这里需要用到`matplotlib`中的高级API`get_children`，你可以理解为获取当前状态下`Axes`对象所包含的所有视觉元素子对象，我们的柱状图本质上其实就是`matplotlib`中的`patches.Rectangle`即简单矩形对象："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2020-10-26T10:36:08.125713Z",
     "iopub.status.busy": "2020-10-26T10:36:08.124717Z",
     "iopub.status.idle": "2020-10-26T10:36:08.150645Z",
     "shell.execute_reply": "2020-10-26T10:36:08.150645Z",
     "shell.execute_reply.started": "2020-10-26T10:36:08.125713Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.patches.Rectangle at 0x187cdddeb70>,\n",
       " <matplotlib.patches.Rectangle at 0x187cddde9e8>,\n",
       " <matplotlib.patches.Rectangle at 0x187cddea080>,\n",
       " <matplotlib.patches.Rectangle at 0x187cddea358>,\n",
       " <matplotlib.spines.Spine at 0x187cdd9ce48>,\n",
       " <matplotlib.spines.Spine at 0x187cdd9c978>,\n",
       " <matplotlib.spines.Spine at 0x187cdd9c8d0>,\n",
       " <matplotlib.spines.Spine at 0x187cddb39e8>,\n",
       " <matplotlib.axis.XAxis at 0x187cdd9c4e0>,\n",
       " <matplotlib.axis.YAxis at 0x187cddb3da0>,\n",
       " Text(0.5, 1.0, ''),\n",
       " Text(0.0, 1.0, ''),\n",
       " Text(1.0, 1.0, ''),\n",
       " <matplotlib.patches.Rectangle at 0x187cddc5550>]"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "fig, ax = plt.subplots(figsize=(8, 4))\n",
    "\n",
    "ax.bar(x=temp['系列'], height=temp['热度'])\n",
    "plt.close() # 关闭图像显示\n",
    "ax.get_children()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "　　可以看到返回的结果中前四个恰恰就是我们四个柱体对应的`patches.Rectangle`对象，可以利用`Python`中的`isinstance()`来根据对象类型提取出所有单一柱体对象，再分别修改属性，常用的手法如下："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2020-10-26T10:36:08.152647Z",
     "iopub.status.busy": "2020-10-26T10:36:08.151642Z",
     "iopub.status.idle": "2020-10-26T10:36:08.250412Z",
     "shell.execute_reply": "2020-10-26T10:36:08.250412Z",
     "shell.execute_reply.started": "2020-10-26T10:36:08.151642Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 576x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from matplotlib.patches import Rectangle\n",
    "\n",
    "fig, ax = plt.subplots(figsize=(8, 4))\n",
    "\n",
    "ax.bar(x=temp['系列'], height=temp['热度'])\n",
    "bars = [x for x in ax.get_children() if isinstance(x, Rectangle)]\n",
    "\n",
    "# 设置第1个柱体\n",
    "bars[0].set_facecolor('#2d7f5e')\n",
    "\n",
    "# 设置第2个柱体\n",
    "bars[1].set_edgecolor('red')\n",
    "bars[1].set_alpha(0.5)\n",
    "\n",
    "# 设置第3个柱体\n",
    "bars[2].set_hatch('//')\n",
    "\n",
    "# 设置第4个柱体\n",
    "bars[3].set_linewidth(2)\n",
    "bars[3].set_linestyle('--')\n",
    "bars[3].set_edgecolor('black')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "- **多系列柱状图**\n",
    "\n",
    "　　除了上面介绍的单一系列柱状图之外，我们更多使用的是多系列柱状图。\n",
    "  \n",
    "　　首先我们来介绍横向组合柱状图，因为`matplotlib`中的柱状图比较的“呆”，所以我们需要结合柱体绘制摆放的原理来自制多系列柱状图，这时候利用到我们示例数据的**季度属性**：\n",
    "\n",
    "* <font color=red size=3>下面的代码涉及到图例的一些知识，其中的label参数相当于为每个图层绑定图例上显示的一个记录，我们将在明天的日程开始学习matplotlib中图例的相关知识</font>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2020-10-26T10:36:08.252373Z",
     "iopub.status.busy": "2020-10-26T10:36:08.251375Z",
     "iopub.status.idle": "2020-10-26T10:36:08.387011Z",
     "shell.execute_reply": "2020-10-26T10:36:08.387011Z",
     "shell.execute_reply.started": "2020-10-26T10:36:08.252373Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAecAAAD2CAYAAADs8E/eAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAAAXIklEQVR4nO3dfZBV9Z3n8feXBxt8WAUkbhAULUlEd1czNtqKZkgYSgmyo44adMzijEhIqYlPsfAhPmWCUxsr40MZn8JEw8RB405cJWQixrTRNepiLCeMEXHRaKsZaUpAMCLCd//oK/LQ9D2NfbvPbd6vKop7f+fc3/3dc4vz4Zzzu+cbmYkkSSqPPj09AEmStDnDWZKkkjGcJUkqGcNZkqSSMZwlSSqZfj09gI/sueeeOXLkyJ4ehiRJ3ebZZ59tzcyhW7aXJpxHjhzJwoULe3oYkiR1m4j4Q3vtntaWJKlkDGdJkkrGcJYkqWRKc825PevWraOlpYX333+/p4dSegMGDGD48OH079+/p4ciSfqESh3OLS0t7LbbbowcOZKI6OnhlFZmsnz5clpaWthvv/16ejiSpE+o1Ke133//fYYMGWIwVxERDBkyxDMMktRLlDqcAYO5ILeTJPUepQ9nSZJ2NKW+5txbffjhh6xbt453332X5cuX8/rrr7N48WJmzJixzQldH3zwATvttFM3j1SS1BPqKpyj+Z4u7S/HnV5ovWXLlnH66aczf/58+vbty8qVKzn33HOZPXs2GzZsoF+/foWDc/78+Vx99dXsttturFy5kn333ZdjjjmGT3/607z33nvsvvvuW71m8eLFnHfeeTz88MNAW7j361dXX52kbtbV+0sovs/UJ+cevoBLLrmE1atXM2zYMA455BBGjBjBq6++ytChQznmmGO46KKLGD9+fNV+MpNjjz2WL33pSwDMnTuXfv36cfLJJ5OZrFixYmPwnnXWWSxdupRddtkFgJ122olJkyaxYcMGGhoaeOCBB2r5kSVJPchrzlUsWLCANWvWcOmllzJmzBjOOeccli5dysyZMzn++OO56qqrCgUzwJIlS5g4cSKTJk1i9OjRTJs2jQsvvJD999+fyZMnM2XKFN566y0A+vbtyy233MLNN9/MkCFDmDdvHhdccAGHHXYY9957by0/siSph3nkXMWECRM44IADeO2117jssstobm7m8MMPZ9CgQYwaNYpFixbR2NgItAVqe9avX09E8JnPfIaHH36Y+fPnM3v2bM4991wGDx7MggULaGxsZNq0aRtPj2/YsIGf/OQnPPHEEyxevJgTTjiB1tZWWltbef7553nooYe6bRtIUi2dzZIu7/NORnV5n93JcC7gwQcf5N5772XnnXfm7bffZt26dTz33HO89957nH/++cyaNYvrrrtum9edP/jgA2688UaOPPJIrrnmGkaOHMkZZ5zBc889x7JlyzjppJNobW1lwoQJzJw5k4kTJ/L+++/z1a9+lalTp3LWWWfR2NjIm2++yf7778/FF1/czVtAktSdDOcCXnnlFb73ve/R1NTE/fffT2trKzNmzNhsnW9961tV+/nwww+ZPXs2a9as4aWXXmLs2LFceeWVrF27lmuvvZYzzzyTzARg1apVvPrqq1x55ZU0NDRsLKf5zjvvOCFMkno59/AFDBs2jCuuuIK1a9fyxBNPcOCBB3L//fcDbDz67dOn+uX7VatWceqppzJgwAAA/vSnP/HGG2/wu9/9jhNPPJG1a9dy3XXX0djYyLvvvktTUxMPPfQQkydP5tZbb+VHP/oRBx54oMEsSb1cXe3le2oa/9e//nVGjBjBvHnzuPzyyxk+fDinnXYaL774IhdffHGhYAYYPHgwjzzyyMbnLS0tXHrppcyZM2ez9V544QX23ntvABoaGvjmN7/JmDFjGDt2LBdddFHXfTBJUik5W7uKl19+mTPOOIOGhgbmzJnDQQcdxLp161i/fj2PPPIIt91223b129LSwimnnLJxMtmmXnnlFWbMmMHXvvY1TjvtNB599FHmzZvHhAkTmDp1KmPHjuWXv/zlJ/1okqSSio+ucfa0xsbG/Oi66kd+//vfM3r06B4aUe1lZpfeE7u3by9JxdXTTUh25NnaEfFsZm51lOaRcw+yWIUkqT2GsyRJJWM4S5JUMnU1W7u3sCqVJKkjdRXO+7z98y7t77VPTSy0nlWpJEndyT18AUWqUi1atIjrr7+ehoaGzV777rvvcvvtt3PCCSdYlUqSVIjhXMWmValuu+02zj77bG644QZmzpzJPffcw/nnn88RRxzB+PHj+cY3vtFhX0uWLOHcc8+lf//+LF26lNdff53BgwdzySWXbPz99A9+8ANGjBixsSrVwIEDufrqq7n77rt55JFHaG5uLnSr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\n",
      "text/plain": [
       "<Figure size 576x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "bar_width = 0.2\n",
    "\n",
    "# 自定义x轴坐标，原先的字符型x坐标不方便自制多系列柱状图\n",
    "x = np.array([1, 2, 3, 4])\n",
    "\n",
    "fig, ax = plt.subplots(figsize=(8, 4))\n",
    "\n",
    "# 依次提取对应的数据绘制每个系列的柱状图，其中x由n*bar_width控制，n=0,1,2,3\n",
    "ax.bar(x, data.query('系列 == \"Python\"')['热度'], \n",
    "       width=bar_width, \n",
    "       color='#00bfa5',\n",
    "       label='第一季度')\n",
    "\n",
    "ax.bar(x+bar_width, data.query('系列 == \"R\"')['热度'], \n",
    "       width=bar_width, \n",
    "       color='#1de9b6',\n",
    "       label='第二季度')\n",
    "\n",
    "ax.bar(x+2*bar_width, data.query('系列 == \"Julia\"')['热度'], \n",
    "       width=bar_width, \n",
    "       color='#64ffda',\n",
    "       label='第三季度')\n",
    "\n",
    "ax.bar(x+3*bar_width, data.query('系列 == \"JavaScript\"')['热度'], \n",
    "       width=bar_width, \n",
    "       color='#a7ffeb',\n",
    "       label='第四季度')\n",
    "\n",
    "# 在组合柱体的中心位置设置刻度及标签\n",
    "ax.set_xticks([1.3, 2.3, 3.3, 4.3])\n",
    "ax.set_xticklabels(['Python', 'R', 'Julia', 'JavaScript'])\n",
    "\n",
    "ax.legend(); # 激活legend"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2020-10-26T09:25:17.334352Z",
     "iopub.status.busy": "2020-10-26T09:25:17.334352Z",
     "iopub.status.idle": "2020-10-26T09:25:17.340338Z",
     "shell.execute_reply": "2020-10-26T09:25:17.340338Z",
     "shell.execute_reply.started": "2020-10-26T09:25:17.334352Z"
    }
   },
   "source": [
    "　　接着我们来学习另一种多系列柱状图——**堆叠柱状图**，顾名思义，就是多个系列的数据柱体不再横向并排，而是竖向堆叠在一起，这可以利用`bar()`的`bottom`参数来实现，它可以指定柱体绘制的高度起点，按照这个思路，下面亮出代码："
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2020-10-26T10:36:08.389007Z",
     "iopub.status.busy": "2020-10-26T10:36:08.389007Z",
     "iopub.status.idle": "2020-10-26T10:36:08.565568Z",
     "shell.execute_reply": "2020-10-26T10:36:08.565568Z",
     "shell.execute_reply.started": "2020-10-26T10:36:08.389007Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAewAAAD2CAYAAAAUELQpAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAAAZSklEQVR4nO3dfbRVdb3v8feXBwHRq4DkEIHQoR3Ne6OOW0XB4kSMJHRc9Zii2bCTRHbV8inDh3zqpI1bo6NxOpo3bhnjmpKdvEp0FFRKj2VhDourIh7E3GqHh8GD+MDj9/6xlrCBDWvutTd77bl5v8bYg7W+a665f3Otwfrs35xzzW9kJpIkqWvr0egBSJKk2gxsSZJKwMCWJKkEDGxJkkrAwJYkqQR6NXoAu3LAAQfkiBEjGj0MSZI6zdNPP708MwdvX+/SgT1ixAjmz5/f6GFIktRpIuKV1uruEpckqQQMbEmSSsDAliSpBLr0MezWbNiwgebmZt59991GD6XL69u3L0OHDqV3796NHookqZ1KF9jNzc3su+++jBgxgoho9HC6rMxkxYoVNDc3c8ghhzR6OJKkdirdLvF3332XQYMGGdY1RASDBg1yT4QkdROFAjsiBkbE+Ig4YHcPqAjDuhhfJ0nqPmoGdkQcBPwSOBZ4LCIGR8T0iHgyIq5tsVzdNUmStGtFZthHAZdm5jeBh4CPAz0z8wRgSEQcHhGn11vbPZtVPhs3buSdd95h6dKlPP/88zz88MNMmzaNDRs27PQ569ev78QRSpIaqeZJZ5k5FyAiPkpllj0QmFl9+FFgDPCRdtQWtfx9ETEFmAIwfPjwmhsQ8+6uuUxb5NhzCi23bNkyzjnnHGbPnk3Pnj1ZvXo1F110EdOnT2fz5s306tWLvfbaq9C6Zs+ezQ033MC+++7L6tWref/738+JJ57IQQcdxNtvv81+++23w3MWLlzIxRdfzMMPPwxUAr9Xr9KdQyiphO5heaOH0GVMovOOFBf6hI/KwdCzgA1AAK9VH1oDHAb0b0dtG5l5J3AnQFNTU7ZpazrRlVdeydq1axkyZAgjR45k2LBhLFmyhMGDB3PiiSdy+eWXM27cuJrryUw++clP8qlPfQqAe+65h169enHGGWeQmaxatWpLGJ9//vksXryY/v37A7DXXnsxceJENm/eTJ8+fbj//vt35yZLkhqo0ElnWXEh8CQwCuhXfWif6jrWtqNWOnPmzOGtt97iqquu4phjjuHCCy9k8eLFTJ06lZNPPpnrr7++UFgDLFq0iAkTJjBx4kSOPPJIJk+ezGWXXcahhx7KKaecwqRJk3jjjTcA6NmzJ9///veZNm0agwYNYtasWVx66aUcffTR3HvvvbtzkyVJDVZzhh0RXwPeyMyfAPsD36KyK/t3wEhgIdDcjlrpjB8/nsMOO4y//OUvXH311cybN49jjz2WAQMGcPjhh7NgwQKampqASsi2ZtOmTUQEH/jAB3j44YeZPXs206dP56KLLmLgwIHMmTOHpqYmJk+evGXX+ubNm/nZz37GE088wcKFCzn11FNZvnw5y5cv59lnn+XBBx/stNdAktS5iuwSvxOYGRGTgQXA/cBvImIIMIHKjDuBx+usldIDDzzAvffey957783SpUvZsGEDzzzzDG+//TaXXHIJN998M7fccstOj2OvX7+e2267jeOPP54bb7yRESNGcO655/LMM8+wbNkyTj/9dJYvX8748eOZOnUqEyZM4N133+WLX/wi5513Hueffz5NTU28/vrrHHrooVxxxRWd/ApIkjpTkZPOVgLjW9YiYmy19j8zc3V7a2X08ssv893vfpdRo0Zx3333sXz5ci644IJtlvn6179ecz0bN25k+vTpvPXWW7z44ouMHj2a6667jnXr1nHTTTfxuc99jszKofw1a9awZMkSrrvuOvr06bOl9ejKlSs96UySurm6PuGrIT6zo2plNGTIEK699lrWrVvHE088wRFHHMF9990HsGWW3KNH7UP0a9as4cwzz6Rv374AvPPOO7z22mv8+c9/5rTTTmPdunXccsstNDU18eabbzJq1CgefPBBTjnlFG6//XZ+8pOfcMQRRxjWktTNlf5TvujXsDral7/8ZYYNG8asWbO45pprGDp0KGeffTYvvPACV1xxRaGwBhg4cCBz587dcr+5uZmrrrqKGTNmbLPcc889x8EHHwxAnz59+OpXv8oxxxzD6NGjufzyyztuwyRJXVIpz9JutJdeeolzzz2XPn36MGPGDD74wQ+yYcMGNm3axNy5c7njjjvqWm9zczOf/vSnt5yw1tLLL7/MBRdcwJe+9CXOPvtsHn30UWbNmsX48eM577zzGD16NI888kh7N02S1EXFe8dHu6KmpqZ87zjte55//nmO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\n",
      "text/plain": [
       "<Figure size 576x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 自定义x轴坐标\n",
    "x = np.array([1, 2, 3, 4])\n",
    "y1 = data.query('系列 == \"Python\"')['热度'].values\n",
    "y2 = data.query('系列 == \"R\"')['热度'].values\n",
    "y3 = data.query('系列 == \"Julia\"')['热度'].values\n",
    "y4 = data.query('系列 == \"JavaScript\"')['热度'].values\n",
    "\n",
    "fig, ax = plt.subplots(figsize=(8, 4))\n",
    "\n",
    "# 依次提取对应的数据绘制每个系列的柱状图，\n",
    "# 其中bottom由已经绘制出的y累加而成\n",
    "# 像叠罗汉一样构成最终的堆叠柱状图\n",
    "ax.bar(x, \n",
    "       y1, \n",
    "       width=0.6, \n",
    "       color='#00bfa5',\n",
    "       bottom=0,\n",
    "       label='第一季度')\n",
    "\n",
    "ax.bar(x, \n",
    "       y2, \n",
    "       width=0.6, \n",
    "       color='#1de9b6',\n",
    "       bottom=y1,\n",
    "       label='第二季度')\n",
    "\n",
    "ax.bar(x, \n",
    "       y3, \n",
    "       width=0.6, \n",
    "       color='#64ffda',\n",
    "       bottom=y1+y2,\n",
    "       label='第三季度')\n",
    "\n",
    "ax.bar(x, \n",
    "       y4, \n",
    "       width=0.6, \n",
    "       color='#a7ffeb',\n",
    "       bottom=y1+y2+y3,\n",
    "       label='第四季度')\n",
    "\n",
    "# 在组合柱体的中心位置设置刻度及标签\n",
    "ax.set_xticks(x)\n",
    "ax.set_xticklabels(['Python', 'R', 'Julia', 'JavaScript'])\n",
    "\n",
    "ax.legend(); # 激活legend"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 课后测验：\n",
    "\n",
    "　　因为今天的**柱状图**是商业图表中使用的可能是最多的一种绘图类型，所以给大家找来一个比较美观的**瀑布图**示例，它其实是一种**堆叠柱状图**的变种，请大家在下面数据和代码的基础上，根据原图推测可能进行的设置内容，尽量还原地模仿出下图：\n",
    "  \n",
    "<center>\n",
    "    <img src=\"imgs/课后题目.png\" width=700></img>\n",
    "</center>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 61,
   "metadata": {
    "execution": {
     "iopub.execute_input": "2020-10-26T10:36:08.566546Z",
     "iopub.status.busy": "2020-10-26T10:36:08.566546Z",
     "iopub.status.idle": "2020-10-26T10:36:08.570521Z",
     "shell.execute_reply": "2020-10-26T10:36:08.569522Z",
     "shell.execute_reply.started": "2020-10-26T10:36:08.566546Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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NCiQwID7RqchIiIiNkpFeyr8tHghu9esMDoNEREREbExKtpFRERERKycinYRERERESunlo8iKVC2Wk1yZ3IzOg0RERGxUSraRVKg1Qf91fJRREREDKM+7akQER7OnzcDcHFzNzoVMYCKdhERETGK9rSngpu7uwp2GzXm/Q683fxNo9MQERERG6WiPRUWzp3N5iXzjU5DDBAdGUlkRITRaYiIiIiNUtGeCr+s/on9m9YbnYaIiIiI2BgV7SIiIiIiVk5Fu4iIiIiIlVPLR5EUqFj7VfJk1knIIiIiYgwV7SIp0PS9nmr5KCIiIoZRn/ZUOuIXYHQKYhAV7SIiImIU7WkXSYERnVrQptFrRqchIiIiNkpFeyrMmTqFtd/NMjoNEREREbExKtpTYcfmjRzZvd3oNERERETExqhoFxERERGxciraRURERESsnFo+iqRA9UZNyOeZweg0RERExEapaE8FVzc3ou1ijE5DDNCwfRe1fBQRERHDqE97KqlPu22KigjnxdxZcHPXVVFFREQk/WmlXSQFvujWCQ8XR5Zv2mZ0KiIiImKDdCJqKkwbP5aVM6cYnYaIiIiI2BgV7amwb/cuTh7Ya3QaIiIiImJjVLSLiIiIiFg5Fe0iIiIiIlZOJ6KKpEDtZq0p4KU+7SIiImIMFe2p4JUlK0REG52GGKBu8zbq0y4iIiKGUZ/2VFKfdtsUHHif8rm8yJItm9GpiIiIiA3SSrtICkzq00192kVERMQwOhE1FcaPHM6iyWONTkNEREREbIxW2lPh6KHfCY2KNToNEREREbExWmkXEREREbFyKtpFRERERKyctseIpECDdp0pmMXD6DRERETERqloTwVvHx8CwtWn3RbVaNxUfdpFRETEMOrTnkrq026b/G/5UTaXJ7nz5DU6FREREbFBWmkXSYFpg/uoT7uIiIgYRieipsKoIQP5fuwIo9MQERERERujlfZUOHPiuPq0i4iIiEi600q7iIiIiIiVU9EuIiIiImLltD1GJAWavNOdIlkzGp2GiIiI2CgV7alQqEhR7oVFGZ2GGKBS3frq0y4iIiKGUZ/2VFKfdtvkd+kCpXN6UrhYMaNTERERERuklXaRFJg9coj6tIuIiIhhdCJqKnzc+wNmfTrI6DRERERExMZopT0VLl34S33aRURERCTdaaVdRERERMTKqWgXEREREbFy2h4jkgItevalWDb1aRcRERFjqGhPhVLlynM3NNLoNMQA5au/rD7tIiIiYhj1aU8l9Wm3TZfPnqJkjsyULlfe6FRERETEBmmlXSQFfhg7Un3aRURExDA6ETUV+nXtwtRBvYxOQ0RERERsjFbaU+GWn5/6tIuIiIhIutNKu4iIiIiIlVPRLiIiIiJi5bQ9RiQF2vcfSonsmYxOQ0RERGyUivZUqFC5CrdD1KfdFpWoUEl92kVERMQw6tOeSurTbpvOHT1MieyZqFi1mtGpiIiIiA3SSrtICiyZMk592kVERMQwOhE1FXp0aMuE3l2NTkNEREREbIxW2lMhMOC++rSLiIiISLrTSruIiIiIiJVT0S4iIiIiYuW0PUYkBd4ZNoqSOTIbnYaIiIjYKBXtqVCjdh1uBkcYnYYYoGDJMpRWn3YRERExiPq0p5L6tNum4/v3UCxbRmrWqWd0KiIiImKDtNIukgKrZk3Fw8VRRbuIiIgYQieipsLbzd9kzPsdjE5DRERERGyMVtpTITIigmj1aRcRERGRdKaVdhERERERK6eiXURERETEyml7jEgKdB81ntI5PY1OQ0RERGyUivZUqNewMTcehBudhhjAp1ARCqtPu4iIiBhEfdpTSX3abdPhnVspkjUjrzZ+3ehURERExAZppV0kBdb/MBsPF0cV7SIiImIInYiaCm0avcaITi2MTkNEREREbIyKdhERERERK6eiXURERETEyqloFxERERGxcjoRVSQF+kyYRtlcnkanISIiIjZKRXsqvNG8JdeCwoxOQwyQzduH3OrTLiIiIgZRn/ZUUp9227Rv41oKZvGgSYtWRqciIiIiNkh72lMhIjycqAhdEdUWbVm6gEXz5hidhoiIiNgoFe2p0KVFU77o1snoNERERETExqhoFxERERGxciraRURERESsnIp2ERERERErp5aPIikwcNocyufyMjoNERERsVEq2lOhZYdOXAlUn3ZblMkrK1myqU+7iIiIGEN92lNJfdpt087VyynglYFWHTsbnYqIiIjYIO1pT4UAf3+CA+8bnYYYYPeaFfy0eKHRaYiIiIiN0vaYVOjZqR2hUbGMXrjK6FRERERExIZopV1ERERExMqpaBcRERERsXIq2kVERERErJz2tIukwCdzFvJibrV8FBEREWOoaE+Fjl27cTkg1Og0xAAubu64ubsbnYaIiIjYKPVpTyX1abdNm5fMJ59nBjq9393oVERERMQGaU97Kty8cR3/W35GpyEG2L9pPb+s/snoNERERMRGaXtMKvR//131aRcRERGRdKeVdhERERERK6eiXURERETEyqloFxERERGxctrTLpICoxeuoqKP+rSLiIiIMVS0p8L7vftx4X6I0WmIiIiIiI1Rn/ZUUp9227T2u1nkyexOt779jU5FREREbJD2tKfCRV9f/C5dMDoNMcCR3dvZsXmj0WmIiIiIjdL2mFQY1vdD9WkXERERkXSnlXYRERERESunol1ERERExMppe4xICji7uuLq6mR0GiIiImKjVLSLpMDwuYvVp11EREQMo6I9FXoPHoqvv/q0i4iIiEj6Up/2VFKfdtu0cuYUcmdyo8+QYUanIiIiIjZIJ6KmwukTx7l89pTRaYgBTh7Yy77du4xOQ0RERGyUtsekwughA9WnXURERETSnVbaRURERESsnIp2ERERERErp+0xIing4emFl5uz0WmIiIiIjVLRLpICg6fPU592ERERMYyK9lQYPHI05+4FG52GiIiIiNgY9WlPJfVpt02LJo8lV0ZXhowaY3QqIiIiYoO00p4KRw4e4Ny9YEpUqGR0KpLOfI8d4aaLfl1ERETEGOoekwoTRo1gyZRxRqchIiIiIjZGRbuIiIiIiJVT0S4iIiIiYuW0SVckBbLm8iaLu/q0i4iIiDFUtIukQN+JM9SnXURERAyjoj0VRoyfxNm7D4xOQ0RERERsjPq0p5L6tNum78eOIIeHKyPHTzI6FREREbFBWmlPhb27duDrH0L56i8bnYqksytnT+OvPu0iIiJiEFUhqTB9wjhCo2JVtIuIiIhIulLLRxERERERK6eiXURERETEyml7TCqdPnyAEZ1aJLqteqMmNGzfhaiIcL7o1sniPrWbtaZu8zYEB95nUp9uFvEG7TpTo3FT/G/5MW1wH4t4k3e6U6luffwuXWD2yCEW8RY9+1K++stcPnuKH8aOtIi37z+UEhUqce7oYZZMGWcRf2fYKAqWLMPx/XtYNWuqRbz7qPH4FCrC4Z1bWf/DbIt4nwnTyObtw76Na9mydIFFfOC0OWTyysrO1cvZvWaFRfyTOQtxcXNn85L57N+03iI+euEqANZ+N4sju7cnijm7ujJ87mIAVs6cwskDexPFPTy9GDx9HgCL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\n",
      "text/plain": [
       "<Figure size 900x540 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from matplotlib import ticker\n",
    "\n",
    "x = ['阶段1', '阶段2', '阶段3', '阶段4', '阶段5']\n",
    "y = np.array([0.54, 0.24, 0.12, 0.06, 0.04])\n",
    "\n",
    "fig, ax = plt.subplots(figsize=(12.5, 7.5))\n",
    "\n",
    "'''\n",
    "你的答案\n",
    "'''\n",
    "ax.bar(x, \n",
    "       y, \n",
    "       width=1, \n",
    "       color='#ADD8E6',\n",
    "       edgecolor='black',\n",
    "       linestyle='--' ,\n",
    "       linewidth=1.5,)\n",
    "bars = [x for x in ax.get_children() if isinstance(x, Rectangle)]\n",
    "bars[1].set_xy((0.5,y[0]))\n",
    "bars[2].set_xy((1.5,y[0]+y[1]))\n",
    "bars[3].set_xy((2.5,y[0]+y[1]+y[2]))\n",
    "bars[4].set_xy((3.5,y[0]+y[1]+y[2]+y[3]))\n",
    "bars[2].set_alpha(0.5)\n",
    "bars[2].set_edgecolor('red')\n",
    "bars[2].set_hatch('//')\n",
    "bars[2].set_color('red')\n",
    "\n",
    "#隐藏spines对象\n",
    "ax.spines['left'].set_color('none')\n",
    "ax.spines['top'].set_color('none')\n",
    "ax.spines['right'].set_color('none')\n",
    "#设置y标签\n",
    "ax.set_yticks([0.54,0.78,0.9,0.96,1])\n",
    "ax.set_yticklabels(['54%','78%','90%','96%','100%'])\n",
    "# 设置Axes和Figure区域的背景色彩\n",
    "ax.set_facecolor('#e0f3f8')\n",
    "fig.set_facecolor('#e0f3f8')\n",
    "# 设置y轴的网格，网格线为虚线，颜色为黑色，网格位于图像下面\n",
    "ax.grid(True, axis='y', linestyle='--', color='black')\n",
    "ax.set_axisbelow(True)\n",
    "#设置x轴标签大小\n",
    "ax.tick_params(axis='x', which='major', labelsize=15)\n",
    "ax.tick_params(axis='y', which='major', labelsize=15);\n",
    "# 添加标题\n",
    "ax.set_title('阶段目标完成情况', fontsize=25,pad=25)\n",
    "\n",
    "# 保存图片\n",
    "fig.savefig('课后题目.png', dpi=300, bbox_inches='tight', pad_inches=0.1);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "* 请在今天对应的帖子下回复补充过注释的代码截图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(-0.5, 0)"
      ]
     },
     "execution_count": 46,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "bars[0].xy"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.1"
  },
  "widgets": {
   "application/vnd.jupyter.widget-state+json": {
    "state": {},
    "version_major": 2,
    "version_minor": 0
   }
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
